home *** CD-ROM | disk | FTP | other *** search
/ Apple Developer Connection 1998 Fall: Game Toolkit / Disc.iso / SDKs / QuickTime Mac / RIncludes / Components.r next >
Encoding:
Text File  |  1998-04-09  |  4.1 KB  |  133 lines  |  [TEXT/MPS ]

  1. /*
  2.      File:        Components.r
  3.  
  4.      Contains:    Component Manager Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    QuickTime 3.0
  8.  
  9.      Copyright:    © 1991-1998 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:        Please include the the file and version information (from above) with
  12.                  the problem description.  Developers belonging to one of the Apple
  13.                  developer programs can submit bug reports to:
  14.  
  15.                      devsupport@apple.com
  16.  
  17. */
  18.  
  19. #ifndef __COMPONENTS_R__
  20. #define __COMPONENTS_R__
  21.  
  22. #ifndef __CONDITIONALMACROS_R__
  23. #include "ConditionalMacros.r"
  24. #endif
  25.  
  26. #define cmpWantsRegisterMessage         0x80000000
  27. #define componentDoAutoVersion             0x01
  28. #define componentWantsUnregister         0x02
  29. #define componentAutoVersionIncludeFlags  0x04
  30. #define componentHasMultiplePlatforms     0x08
  31. #define componentLoadResident             0x10
  32.  
  33.  
  34. /*----------------------------strn • Pascal-Style String--------------------------------*/
  35.     // ••• used for component name resources
  36. type 'strn' {
  37.         pstring;                                                /* String                */
  38. };
  39. /*----------------------------stri • Pascal-Style String--------------------------------*/
  40.     // ••• used for component info resources
  41. type 'stri' {
  42.         pstring;                                                /* String                */
  43. };
  44. /*----------------------------thng  • Component Manager thing ------------------------*/
  45. /*
  46.     thng_RezTemplateVersion:
  47.         0 - original 'thng' template    <-- default
  48.         1 - extended 'thng' template
  49. */
  50. #ifndef thng_RezTemplateVersion
  51.     #ifdef UseExtendedThingResource            /* grandfather in use of “UseExtendedThingResource” */
  52.         #define thng_RezTemplateVersion 1
  53.     #else
  54.         #define thng_RezTemplateVersion 0
  55.     #endif
  56. #endif
  57.  
  58.  
  59. type 'thng' {
  60.         literal longint;                                        /* Type */
  61.         literal longint;                                        /* Subtype */
  62.         literal longint;                                        /* Manufacturer */
  63.         unsigned hex longint;                                     /* component flags */
  64.         unsigned hex longint    kAnyComponentFlagsMask = 0;        /* component flags Mask */
  65.         literal longint;                                        /* Code Type */
  66.         integer;                                                /* Code ID */
  67.         literal longint;                                        /* Name Type */
  68.         integer;                                                /* Name ID */
  69.         literal longint;                                        /* Info Type */
  70.         integer;                                                /* Info ID */
  71.         literal longint;                                        /* Icon Type */
  72.         integer;                                                /* Icon ID */
  73. #if thng_RezTemplateVersion == 1
  74.         unsigned hex longint;                                    /* version of Component */
  75.         longint;                                                /* registration flags */
  76.         integer;                                                /* resource id of Icon Family */
  77.         longint = $$CountOf(ComponentPlatformInfo);
  78.         wide array ComponentPlatformInfo {
  79.             unsigned hex longint;                                 /* component flags */
  80.             literal longint;                                    /* Code Type */
  81.             integer;                                            /* Code ID */
  82.             integer platform68k = 1,                            /* platform type (response from gestaltSysArchitecture) */
  83.                     platformPowerPC = 2,
  84.                     platformInterpreted = 3,
  85.                     platformWin32 = 4;
  86.         };
  87. #endif
  88. };
  89.  
  90.  
  91. /*----------------------------thga • Thing --------------------------------------------*/
  92. type 'thga' {
  93.         literal longint;                                        /* Type */
  94.         literal longint;                                        /* Subtype */
  95.         literal longint;                                        /* Manufacturer */
  96.         unsigned hex longint;                                     /* component flags */
  97.         unsigned hex longint    kAnyComponentFlagsMask = 0;        /* component flags Mask */
  98.         literal longint;                                        /* Code Type */
  99.         integer;                                                /* Code ID */
  100.         literal longint;                                        /* Name Type */
  101.         integer;                                                /* Name ID */
  102.         literal longint;                                        /* Info Type */
  103.         integer;                                                /* Info ID */
  104.         literal longint;                                        /* Icon Type */
  105.         integer;                                                /* Icon ID */
  106.  
  107.         literal longint;                                        /* Type */
  108.         literal longint;                                        /* Subtype */
  109.         literal longint;                                        /* Manufacturer */
  110.         unsigned hex longint;                                     /* component flags */
  111.         unsigned hex longint    kAnyComponentFlagsMask = 0;        /* component flags Mask */
  112. };
  113.  
  114.  
  115. /*----------------------------thn#  • Component Manager thing load order dependency ----*/
  116. type 'thn#' {
  117.         array {
  118.             literal longint;                                        /* Code Type */
  119.             integer;                                                /* Code ID */
  120.         };
  121. };
  122. #if !TARGET_OS_MAC
  123. /*----------------------------stri • dlle resource--------------------------------*/
  124.     // ••• used for multi-platform things
  125.     type 'dlle' {
  126.         cstring;
  127.     };
  128. #endif
  129.  
  130.  
  131. #endif /* __COMPONENTS_R__ */
  132.  
  133.